﻿using M.AuditField;
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace M.ShopMachine.Domain
{
    /// <summary>
    /// 机床表
    /// </summary>
    [Table("Device")]
    public class Device: AuditFields
    {
        [Key]
        public int Id { get; set; }
        /// <summary>
        /// 设备编号
        /// </summary>
        public string? DeviceNumber { get; set; }
        /// <summary>
        /// 设备名称
        /// </summary>
        public string? DeviceName { get; set; }
        /// <summary>
        /// 设备类型
        /// </summary>
        public string? DeviceType { get; set; }
        /// <summary>
        /// 设备图片
        /// </summary>
        public string? DevicePicture { get; set; }
        /// <summary>
        /// 所在生产线
        /// </summary>
        public string? ProductionLine { get; set; }
        /// <summary>
        /// 采购日期
        /// </summary>
        public DateTime? PurchaseDate { get; set; }
        /// <summary>
        /// 状态
        /// </summary>
        public bool? DeviceState { get; set; }
        /// <summary>
        /// 添加人
        /// </summary>
        public string? AddPeople { get; set; }
        /// <summary>
        /// 添加日期
        /// </summary>
        public DateTime? AddDate { get; set; }
        /// <summary>
        /// 车间id(外键)
        /// </summary>
        public int? WorkshopId { get; set; }
        /// <summary>
        /// 报修编号
        /// </summary>
        public string? RepairsNumber { get; set; }
        /// <summary>
        /// 维修状态
        /// </summary>
        public string? MaintainState { get; set; }
        /// <summary>
        /// 报修人
        /// </summary>
        public string? Repairman { get; set; }
        /// <summary>
        /// 故障日期
        /// </summary>
        public DateTime? FailureDate { get; set; }
        /// <summary>
        /// 故障描述
        /// </summary>
        public string? FailureDescription { get; set; }
        /// <summary>
        /// 维修时间
        /// </summary>
        public DateTime? MaintenanceTime { get; set; }
        /// <summary>
        /// 保养编号
        /// </summary>
        public string? MaintainNumber { get; set; }
        /// <summary>
        /// 保养次数
        /// </summary>
        public int? MaintainTimes { get; set; }
        /// <summary>
        /// 保养周期
        /// </summary>
        public string? MaintainPeriod { get; set; }
        /// <summary>
        /// 保养类型
        /// </summary>
        public string? MaintainType {  get; set; } 
    }
}
